A computer program serves as part of a feedback control system that locks the frequency of a laser to one of the spectral peaks of cesium atoms in an optical absorption cell. The system analyzes a saturation absorption spectrum to find a target peak and commands a laser-frequency-control circuit to minimize an error signal representing the difference between the laser frequency and the target peak. The program implements an algorithm consisting of the following steps: Acquire a saturation absorption signal while scanning the laser through the frequency range of interest. Condition the signal by use of convolution filtering. Detect peaks. Match the peaks in the signal to a pattern of known spectral peaks by use of a pattern-recognition algorithm. Add missing peaks. Tune the laser to the desired peak and thereafter lock onto this peak. Finding and locking onto the desired peak is a challenging problem, given that the saturation absorption signal includes noise and other spurious signal components; the problem is further complicated by nonlinearity and shifting of the voltage-to-frequency correspondence. The pattern-recognition algorithm, which is based on Hausdorff distance, is what enables the program to meet these challenges.